package co.fitstart.entity.user;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import org.springframework.format.annotation.DateTimeFormat;
import com.demo2do.core.utils.DateFormatUtils;

/**
 * 
 * @author dan
 *
 */
@Entity
@Table(name = "online_user_fit_record")
public class OnlineUserFitRecord {
    
    @Id
    @GeneratedValue
    private Long id;
    
    /** 群号 */
    private String groupNumber;
    
    /** 学号 */
    private String studentId;
    
    /** 日期 */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date date;
    
    /** 姓名 */
    private String name;
    
    /** 年龄 */
    private Integer age;
    
    /** 身高 CM */
    private BigDecimal height;
    
    /** 入营前体重 KG */
    private BigDecimal originalWeight;
    
    /** 入营前胸围 CM*/
    private BigDecimal originalBust;
    
    /** 入营前腰围 CM */
    private BigDecimal originalWaist;
    
    /** 入营前臀围 CM */
    private BigDecimal originalHips;
    
    /** 累计减重 体重KG */
    private BigDecimal reduceWeight;
    
    /** 累计减重 胸围 CM */
    private BigDecimal reduceBust;
    
    /** 累计减重 腰围 CM */
    private BigDecimal reduceWaist;
    
    /** 累计减重 臀围 CM */
    private BigDecimal reduceHips;
    
    /** 减重比 */
    private Float reductionRatio;
    
    private Integer rank;
    
    @Column(name = "is_disabled")
    private boolean disabled;
    
    /**
     * 
     */
    public OnlineUserFitRecord() {
        
    }
    
    public String getDateString() {
      return DateFormatUtils.format(this.date, "yyyy-MM-dd");
    }

    /**
     * @return the id
     */
    public Long getId() {
      return id;
    }

    /**
     * @return the groupNumber
     */
    public String getGroupNumber() {
      return groupNumber;
    }

    /**
     * @return the studentId
     */
    public String getStudentId() {
      return studentId;
    }

    /**
     * @return the date
     */
    public Date getDate() {
      return date;
    }

    /**
     * @return the name
     */
    public String getName() {
      return name;
    }

    /**
     * @return the age
     */
    public Integer getAge() {
      return age;
    }

    /**
     * @return the height
     */
    public BigDecimal getHeight() {
      return height;
    }

    /**
     * @return the originalWeight
     */
    public BigDecimal getOriginalWeight() {
      return originalWeight;
    }

    /**
     * @return the originalBust
     */
    public BigDecimal getOriginalBust() {
      return originalBust;
    }

    /**
     * @return the originalWaist
     */
    public BigDecimal getOriginalWaist() {
      return originalWaist;
    }

    /**
     * @return the originalHips
     */
    public BigDecimal getOriginalHips() {
      return originalHips;
    }

    /**
     * @return the reduceWeight
     */
    public BigDecimal getReduceWeight() {
      return reduceWeight;
    }

    /**
     * @return the reduceBust
     */
    public BigDecimal getReduceBust() {
      return reduceBust;
    }

    /**
     * @return the reduceWaist
     */
    public BigDecimal getReduceWaist() {
      return reduceWaist;
    }

    /**
     * @return the reduceHips
     */
    public BigDecimal getReduceHips() {
      return reduceHips;
    }

    /**
     * @return the reductionRatio
     */
    public Float getReductionRatio() {
      return reductionRatio;
    }

    /**
     * @return the rank
     */
    public Integer getRank() {
      return rank;
    }

    /**
     * @return the disabled
     */
    public boolean isDisabled() {
      return disabled;
    }

    /**
     * @param id the id to set
     */
    public void setId(Long id) {
      this.id = id;
    }

    /**
     * @param groupNumber the groupNumber to set
     */
    public void setGroupNumber(String groupNumber) {
      this.groupNumber = groupNumber;
    }

    /**
     * @param studentId the studentId to set
     */
    public void setStudentId(String studentId) {
      this.studentId = studentId;
    }

    /**
     * @param date the date to set
     */
    public void setDate(Date date) {
      this.date = date;
    }

    /**
     * @param name the name to set
     */
    public void setName(String name) {
      this.name = name;
    }

    /**
     * @param age the age to set
     */
    public void setAge(Integer age) {
      this.age = age;
    }

    /**
     * @param height the height to set
     */
    public void setHeight(BigDecimal height) {
      this.height = height;
    }

    /**
     * @param originalWeight the originalWeight to set
     */
    public void setOriginalWeight(BigDecimal originalWeight) {
      this.originalWeight = originalWeight;
    }

    /**
     * @param originalBust the originalBust to set
     */
    public void setOriginalBust(BigDecimal originalBust) {
      this.originalBust = originalBust;
    }

    /**
     * @param originalWaist the originalWaist to set
     */
    public void setOriginalWaist(BigDecimal originalWaist) {
      this.originalWaist = originalWaist;
    }

    /**
     * @param originalHips the originalHips to set
     */
    public void setOriginalHips(BigDecimal originalHips) {
      this.originalHips = originalHips;
    }

    /**
     * @param reduceWeight the reduceWeight to set
     */
    public void setReduceWeight(BigDecimal reduceWeight) {
      this.reduceWeight = reduceWeight;
    }

    /**
     * @param reduceBust the reduceBust to set
     */
    public void setReduceBust(BigDecimal reduceBust) {
      this.reduceBust = reduceBust;
    }

    /**
     * @param reduceWaist the reduceWaist to set
     */
    public void setReduceWaist(BigDecimal reduceWaist) {
      this.reduceWaist = reduceWaist;
    }

    /**
     * @param reduceHips the reduceHips to set
     */
    public void setReduceHips(BigDecimal reduceHips) {
      this.reduceHips = reduceHips;
    }

    /**
     * @param reductionRatio the reductionRatio to set
     */
    public void setReductionRatio(Float reductionRatio) {
      this.reductionRatio = reductionRatio;
    }

    /**
     * @param rank the rank to set
     */
    public void setRank(Integer rank) {
      this.rank = rank;
    }

    /**
     * @param disabled the disabled to set
     */
    public void setDisabled(boolean disabled) {
      this.disabled = disabled;
    }
}